#!/bin/sh -efu

. @RPMCONFIGDIR@/functions
. @RPMCONFIGDIR@/find-package

SymlinkReq()
{
	local f="$1" to; shift
	[ -L "$f" ] || return 0
	to=$(readlink -v "$f")
	[ -n "$to" ] || Fatal "$f: cannot happen"
	if [ -z "${to##/*}" ]; then
		# Link target is absolute path.
		# Just let FindPackage do the rest of the work.
		FindPackage "$f" "$to"
	else
		# Link target is relative.  Do one single step of symlink resolution,
		# that is, catenate symlink parent directory and its target.
		# E.g.  $RPM_BUILD_ROOT/usr/share/foo/rt.jar -> ../java/rt.jar
		# goes 	$RPM_BUILD_ROOT/usr/share/foo/../java/rt.jar
		to=$(dirname "$f")/$to
		# As we strip $RPM_BUILD_ROOT, we get possibly non-canonical
		# required path, which is yet okay for FindPackage.
		to=${to#${RPM_BUILD_ROOT-}}
		FindPackage "$f" "$to"
	fi
}

ArgvFileAction SymlinkReq "$@"
